예제로 살펴보는 Go : Range

range는 배열, map, 슬라이스와 같은 다양한 데이터 스트럭처로부터 데이터를 순환하면서 가져오기 위해서 사용한다.6~11 슬라이스 nums의 값을 range로 가져와서 더하는 코드다. 배열 역시 같은 방식으로 값을 가져올 수 있다. range를 이용하면 두 개의 값을 반환한다. 첫번째 값은 key이고 두번째 값은 value다. 따라서 num 에는 슬라...

예제로 살펴보는 Go : Map

Map은 Go에 내장된 associative date type이다. 다른 언어에서는 hash(ruby)나 dicts(python)라고 부르기도 한다. 내장 함수인 make를 이용해서 비어있는 map을 만들 수 있다. make(map=value의 문법으로 값을 저장 할 수 있다. Println을 이용해서 map을 출력하면, map에 있는 모든 key/valu...

예제로 살펴보는 Go : Slices

Slices는 go의 중요한 데이터타입이다. 배열과 상당히 유사하지만 더욱 강력한 기능을 제공 하기 때문에, 배열 대신 슬라이스를 주로 사용하게 된다.배열과 다르게 슬라이스는 크기의 변경이 가능하다.0 보다 큰 슬라이스를 만들기 위해서는 make를 사용해야 한다. 예제코드에서는 스트링을 저장 할 수 있는 크기가 3인 슬라이스를 만들었다. 슬라이스의 값은 z...

예제로 살펴보는 Go : Value

Go는 strings, integers, floats, booleans 등 다양한 값(value)들을 지원한다. 예제를 통해서 기본적인 값들을 살펴보도록 하자.+ 연산자를 이용해서 스트링을 더 할 수 있다. Integer과 floats 값들의 연산을 확인 할 수 있다. Boolean 연산의 경우 예상한 대로 결과가 나오는 걸 확인 할 수 있다.----다음 ...

예제로 살펴보는 Go : Arrays

배열(Array)는 하나 이상의 연속된 자료들의 집단으로 구성된 자료구조다.10 번째 줄에서 크기가 5인 int형 배열 a를 만들었다. 이 배열은 5개의 int 값을 저장할 수 있다. 11 번째 줄에서 a를 출력했다. 배열을 선언하고 초기화하지 않을 경우에는 각 자료형의 초기 값으로 자동으로 초기화 된다. int, float는 0, string는 "", b...

예제로 살펴보는 Go : Switch

Switch 문은 여러 개의 조건을 분기하기 위해서 사용한다. case 문을 이용해서 여러 개의 조건을 처리하는 것을 확인 할 수 있다. 만약 모든 case 조건을 만족하지 않는 값들에 대한 기본처리를 원하고 싶다면 default문을 이용하면 된다. 19-24 코드에서 default 문을 사용하고 있다. 오늘이 Saturdaty 혹은 Sunday가 아닌 경...

예제로 살펴보는 Go : If/Else

조건에 의해서 실행문을 분기하기 위해서 사용한다. "만약 A 조건을 만족하면 A` 문을 실행하고 그렇지 않으면 B 문을 실행하라"라는 식으로 작동한다.가장 기본적인 코드다. 8-12 코드는 짝수와 홀수를 구분하는 일을 한다. 만약(if) 7을 2로 나눈 나머지가 0이면 "7 is even" 그렇지 않으면(else) "7 is odd"를 출력한다.15-17 ...

예제로 살펴보는 Go : For

Go에서는 루프를 위해서 단지 for 문만 사용 할 수 있다. 다른 언어에서 볼 수 있는 while문을 제공하지 않는다.Go에서 for 문은 크게 3가지 형태를 가진다. 우선 하나의 조건만 가지는 경우가 있다. 8번째 줄 코드는 i가 3보다 작을 때까지 블럭문을 계속 실행 할 것이다. 루프를 한번 돌 때마다 변수 i에 +1을 하기 때문에, 3번 실행 될 것...

예제로 살펴보는 Go : Constants

Go는 캐릭터(character), 스트링, 불리언, numeric 값들에 대한 상수(constants)를 지원한다.상수는 const를 이용해서 선언 할 수 있다. 상수(常數)는 어느 관계를 통하여 변하지 않는 일정한 값을 가진 수나 양을 의미한다. 코드내에서 변수처럼 사용 할 수는 있지만 값을 변경 할 수는 없다. 값을 변경 하려고 하면 컴파일 에러가 발...